www.gusucode.com > 动网论坛Dvbbs v8.3 > 动网论坛Dvbbs v8.3\code\源程序\images\post\reply.js
var Dvbbs_filterScript = true; var Dvbbs_charset="gb2312"; var Dvbbs_bLoad=false var Dvbbs_bTextMode=1; var Dvbbs_Mode=1; var Dvbbs_bIsIE5=document.all; var Dvbbs_Mode = 3; if (Dvbbs_bIsIE5){ } else{ var Dvbbs_bIsNC=true; } function Dvbbs_InitDocument(hiddenid, charset) { if (charset!=null){Dvbbs_charset=charset;} var Dvbbs_bodyTag="<style type=\"text/css\" type=\"text/css\">.quote{margin:5px 20px;border:1px solid #CCCCCC;padding:5px; background:#F3F3F3 }\nbody{boder:0px}.HtmlCode{margin:5px 20px;border:1px solid #CCCCCC;padding:5px;background:#FDFDDF;font-size:14px;font-family:Tahoma;font-style : oblique;line-height : normal ;font-weight:bold;}\nbody{boder:0px}</style></head><body bgcolor=\"#FFFFFF\" title=\"Ctrl+Enter直接提交贴子\" >"; var editor=IframeID var h=document.getElementById(hiddenid).value; if (navigator.appVersion.indexOf("MSIE 6.0",0)==-1){ editor.document.designMode="On" } editor.document.open(); //editor.document.write ('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">'); editor.document.write ('<html><head>'); if (Dvbbs_bIsIE5){ editor.document.write ('<script language="javascript" type="text/javascript">'); editor.document.write ('function imgresize(o){'); editor.document.write ('if(o.width > 500 ){'); editor.document.write (' o.style.width=\'500px\';'); editor.document.write ('}'); editor.document.write ('if(o.height > 800){'); editor.document.write (' o.style.height=\'800px\';'); editor.document.write ('}'); editor.document.write ('}'); editor.document.write ('<\/script>'); } editor.document.write(Dvbbs_bodyTag); if (h!="") { editor.document.write(unescape(h)); } editor.document.write ("</body>"); editor.document.write ("</html>"); editor.document.close(); editor.document.body.contentEditable = "True"; editor.document.charset=Dvbbs_charset; Dvbbs_bLoad=true; Dvbbs_setStyle(); editor.document.onkeyup = function() { editor_event(hiddenid); }; } function editor_event(objname){ var ispost=0; copy_preview(); var editEvent = IframeID ? IframeID.event : event; if (editEvent && editEvent.keyCode) { if(((editEvent.ctrlKey && editEvent.keyCode == 13) || (editEvent.altKey && editEvent.keyCode == 83)) && ispost==0){ Dvbbs_CopyData(objname); document.Dvform.submit(); } } } function Dvbbs_setStyle() { if (Dvbbs_Mode==2) { Dvbbs_bTextMode=3; } var bs = IframeID.document.body.style; bs.scrollbar3dLightColor= '#D4D0C8'; bs.scrollbarArrowColor= '#000000'; bs.scrollbarBaseColor= '#D4D0C8'; bs.scrollbarDarkShadowColor= '#D4D0C8'; bs.scrollbarFaceColor= '#D4D0C8'; bs.scrollbarHighlightColor= '#808080'; bs.scrollbarShadowColor= '#808080'; bs.scrollbarTrackColor= '#D4D0C8'; bs.border='1'; } function Dvbbs_CopyData(hiddenid) { var con=OSWEBXHTML.GetXHTML(IframeID.document.body); document.getElementById(hiddenid).value = con.replace(/·/gi,"."); } //格式化链接 function Dvbbs_correctUrl(cont) { var regExp; regExp = /<a([^>]*) href\s*=\s*([^\s|>]*)([^>]*)/gi cont = cont.replace(regExp, "<a href=$2 target=\"_blank\" "); regExp = /<a([^>]*)><\/a>/gi cont = cont.replace(regExp, ""); return cont; } //---------------- function Dvbbs_formatimg() { if (Dvbbs_bIsIE5){ var tmp=IframeID.document.body.all.tags("IMG"); }else{ var tmp=IframeID.document.getElementsByTagName("IMG"); } for(var i=0;i<tmp.length;i++){ var tempstr=''; if(tmp[i].align!=''){tempstr="align="+tmp[i].align;} if(tmp[i].border!=''){tempstr=tempstr+"border="+tmp[i].border;} tmp[i].outerHTML="<IMG src=\""+tmp[i].src+"\""+tempstr+">" } } //清理多余HTML代码 function Dvbbs_cleanHtml(content) { if(Dvbbs_bTextMode!=1){ content = content.replace(/<img([^>]*) (src\s*=\s*([^\s|>])*)([^>]*)>/gi,"<img $2>"); } content = content.replace(/<p> <\/p>/gi,"") content = content.replace(/<p><\/p>/gi,"<p>") content = content.replace(/<div><\/\1>/gi,"") content = content.replace(/(\r\n){10,}/gi,"$1") content = content.replace(/(<br>\s*){10,}/gi,"<br>") content = content.replace(/(<(meta|iframe|frame|span|tbody|layer)[^>]*>|<\/(iframe|frame|meta|span|tbody|layer)>)/gi, ""); content = content.replace(/<\\?\?xml[^>]*>/gi, "") ; content = content.replace(/ /gi, " "); return content; } //代码过滤及JS提取 function Dvbbs_FilterScript(content) { content = content.replace(/<(\w[^div|>]*) class\s*=\s*([^>|\s]*)([^>]*)/gi,"<$1$3") ; content = content.replace(/<(\w[^font|>]*) style\s*=\s*([^>|\s]*)([^>]*)/gi,"<$1$3") ; content = content.replace(/<(\w[^>]*) lang\s*=\s*([^>|\s]*)([^>]*)/gi,"<$1$3") ; var RegExp = /<(script[^>]*)>((.|\n)*)<\/script>/gi; content = content.replace(RegExp, "[code]<$1><br>$2<br><\/script>[\/code]"); RegExp = /<(\w[^>|\s]*)([^>]*)(on(finish|mouse|Exit|error|click|key|load|change|focus|blur))(.[^>]*)/gi; content = content.replace(RegExp, "<$1") RegExp = /<(\w[^>|\s]*)([^>]*)(&#|window\.|javascript:|js:|about:|file:|Document\.|vbs:|cookie| name| id)(.[^>]*)/gi; content = content.replace(RegExp, "<$1") return content; } function Dvbbs_CleanCode(){ var editor=IframeID; editor.focus(); checkword=1; editor.document.body.innerHTML= OSWEBXHTML.GetXHTML(editor.document.body); checkword=0; } var colour function FormatText(command, option) { var codewrite if(Dvbbs_bTextMode==3&&command!="RemoveFormat"){ switch (command) { case 'fontsize': Dv_ubb("size",option); break; case 'fontname': Dv_ubb("face",option); break; case 'bold': Dv_ubb("B"); break; case 'italic': Dv_ubb("I"); break; case 'underline': Dv_ubb("U"); break; } return } if (Dvbbs_bIsIE5){ if (option=="removeFormat"){ command=option; option=null;} IframeID.document.execCommand(command, false, option); Dvbbs_pureText = false; IframeID.focus(); }else{ if ((command == 'forecolor') || (command == 'backcolor')) { parent.command = command; buttonElement = document.getElementById(command); IframeID.focus(); document.getElementById("colourPalette").style.left = getOffsetLeft(buttonElement) + "px"; document.getElementById("colourPalette").style.top = (getOffsetTop(buttonElement) + buttonElement.offsetHeight) + "px"; if (document.getElementById("colourPalette").style.visibility=="hidden") {document.getElementById("colourPalette").style.visibility="visible"; }else { document.getElementById("colourPalette").style.visibility="hidden"; } var sel = IframeID.document.selection; if (sel != null) { colour = sel.createRange(); } } else{ IframeID.document.execCommand(command, false, option); Dvbbs_pureText = false; IframeID.focus(); } } } function setColor(color) { IframeID.document.execCommand(parent.command, false, color); IframeID.focus(); document.getElementById("colourPalette").style.visibility="hidden"; } function Dvbbs_doSelectClick(str, el) { var Index = el.selectedIndex; if (Index != 0){ el.selectedIndex = 0; FormatText(str,el.options[Index].value); } } function Dvbbs_validateMode() { if (Dvbbs_bTextMode!=2) return true; alert("请取消“查看HTML源代码”选项再使用系统编辑功能或者提交!"); IframeID.focus(); return false; } function Dvbbs_foreColor() { if (!Dvbbs_validateMode()) return; if (Dvbbs_bIsIE5){ var arr = showModalDialog("images/post/selcolor.html", "", "dialogWidth:18.5em; dialogHeight:17.5em; status:0; help:0"); if (arr != null){ if(Dvbbs_bTextMode==3){ Dv_ubb("color",arr); }else{ FormatText('forecolor', arr); } } else{ IframeID.focus();} }else { FormatText('forecolor', ''); } } function Dvbbs_backColor() { if (!Dvbbs_validateMode()) return; if(Dvbbs_bTextMode==3){ alert('当前编辑器不支持该UBB标记。'); return ; } if (Dvbbs_bIsIE5) { var arr = showModalDialog("images/post/selcolor.html", "", "dialogWidth:18.5em; dialogHeight:17.5em; status:0; help:0"); if (arr != null) { if(Dvbbs_bTextMode!=3){ FormatText('backcolor', arr); } } else {IframeID.focus();} }else { FormatText('backcolor', ''); } } function Dvbbs_UserDialog(what) { if (!Dvbbs_validateMode()) return; IframeID.focus(); if(what == "InsertAlipay"){ if (Dvbbs_bIsNC) { imagePath = prompt('请填写图片链接地址信息:', 'http://'); if ((imagePath != null) && (imagePath != "")) { IframeID.document.execCommand('InsertImage', false, imagePath); } IframeID.document.body.innerHTML = (IframeID.document.body.innerHTML).replace("src=\"file://","src=\""); }else{ Dvbbs_foralipay(); } } Dvbbs_pureText = false; IframeID.focus(); } function Dvbbs_foralipay() { var arr = showModalDialog("images/post/alipay.htm", window, "dialogWidth:20em; dialogHeight:34em; status:0; help:0"); if (arr) { IframeID.document.body.innerHTML+=arr; } IframeID.focus(); } function ShowForum_Emot(thepage) { var Emot_PageCount; var Emot_Count=Forum_Emot.length-2; if(Emot_Count%Emot_PageSize==0) { Emot_PageCount=(Emot_Count)/Emot_PageSize }else{ Emot_PageCount=Math.floor((Emot_Count)/Emot_PageSize)+1 } thepage=parseInt(thepage); if (thepage<=Emot_PageCount){ var istr var EmotStr=' '; var EmotPath=Forum_Emot[0]; if (thepage!=1 && Emot_PageCount>1) {EmotStr+='<img style="cursor: pointer;" onClick="ShowForum_Emot('+(thepage-1)+');" src="Images/post/Previous.gif" width="14" height="14" title="上一页"> ';} for(i=(thepage-1)*Emot_PageSize;i<(thepage-1)*Emot_PageSize+Emot_PageSize;i++) { if (i==Emot_Count){break} if (i<9) {istr='em0'+(i+1)} else {istr='em'+(i+1)} EmotStr+='<img title="'+istr+'" style="cursor: pointer;padding:1px;" onload="if(this.width>30){this.width=30;Emot_PageSize=12;}" onClick=putEmot("'+istr+'"); src="'+EmotPath+Forum_Emot[i+1]+'"> '; } if (thepage!=Emot_PageCount) {EmotStr+='<img style="cursor: pointer;" onClick="Emot_PageSize=12;ShowForum_Emot('+(thepage+1)+');" src="Images/post/Next.gif" width="14" height="14" title="下一页"> ';} if (thepage<5 && Emot_PageCount>4) {EmotStr+=' <img title="插入表情窗口" style="cursor: pointer;" onclick="ShadeDiv.ShowFrame(\'dispEmot.asp?action=disp&&sw=510&sh=auto\');" src="'+EmotPath+Forum_Emot[50]+'" width="30" height="30" title="新表情 悠嘻猴">';} //EmotStr+='分页:<b>'+thepage+'</b>/<b>'+Emot_PageCount+'</b>,共<b>'+(Emot_Count)+'</b>个'; //EmotStr+="<select id=emotpage onchange=\"ShowForum_Emot(this.value);\">"; //for (i=1; i<=Emot_PageCount;i++ ) //{ // 'EmotStr+="<option value=\""+i+"\">"+i; //} //EmotStr+="<\/select>"; var Forum_EmotObj=document.getElementById("emot") Forum_EmotObj.innerHTML=EmotStr; //document.getElementById('emotpage').options[thepage-1].selected=true; } } function putEmot(thenNo) { var ToAdd = '['+thenNo+']'; IframeID.document.body.innerHTML+=ToAdd; } function copy_preview(){ var dv_preview=document.getElementById("dv_preview"); if (dv_preview && readCookie("preview")==1) { var html=OSWEBXHTML.GetXHTML(IframeID.document.body); dv_preview.innerHTML=html; if (html==''|| html=='<p> </p>' || html=='<p></p>') dv_preview.innerHTML='<font color="#cccccc">回复效果预览</font> '; if (dv_preview.offsetHeight>200){ dv_preview.style.overflow='auto'; dv_preview.style.height='200px'; } } } function CheckCount(message,total) { Dvbbs_CopyData(message); copy_preview(); var Getmessage=document.getElementById(message); var Gettotal=document.getElementById(total); var max; max = Gettotal.value; if (Getmessage.value.length > max) { Getmessage.value = Getmessage.value.substring(0,max); alert("内容不能超过 " + max + " 个字!"); document.Dvform.Submit.disabled=true; } else { document.Dvform.Submit.disabled=false; } } var ispost=0; function ctlent(){ if (event){ if((event.ctrlKey && event.keyCode == 13) || (event.altKey && event.keyCode == 83)) { ispost=1; Dvbbs_CopyData('Body'); document.Dvform.submit(); } } } function Gopreview(){ document.preview.theBody.value=IframeID.document.body.innerHTML; var popupWin = window.open('', 'preview_page', 'scrollbars=yes,width=750,height=450'); document.preview.submit() } function Gopreview1(){ if (document.getElementById("dv_checkb1").checked){ var dv_preview=document.getElementById("dv_preview"); if(dv_preview){ dv_preview.style.display=''; createCookie("preview","1",365); } }else{ var dv_preview=document.getElementById("dv_preview"); if(dv_preview){ dv_preview.style.display='none'; createCookie("preview","",365); copy_preview(); } } } function showtopic(){ if (document.getElementById("dv_checkb2").checked){ var dv_topic=document.getElementById("dv_topic"); if(dv_topic){ dv_topic.style.display=''; createCookie("topic","1",365); } }else{ var dv_topic=document.getElementById("dv_topic"); if(dv_topic){ dv_topic.style.display='none'; createCookie("topic","",365); } } } function showupload(){ if (document.getElementById("dv_checkb3").checked){ var dv_upload=document.getElementById("dv_upload"); if(dv_upload){ dv_upload.style.display=''; createCookie("upload","1",365); } }else{ var dv_upload=document.getElementById("dv_upload"); if(dv_upload){ dv_upload.style.display='none'; createCookie("upload","",365); } } } function buildTemp(){ if (readCookie("upload")=='1'){ document.getElementById("dv_checkb3").checked = true; var dv_upload = document.getElementById("dv_upload"); if(dv_upload){ dv_upload.style.display=''; } }else{ document.getElementById("dv_checkb3").checked=false; var dv_upload=document.getElementById("dv_upload"); if(dv_upload){ dv_upload.style.display='none'; } } if (readCookie("topic")=='1'){ document.getElementById("dv_checkb2").checked=true; var dv_topic=document.getElementById("dv_topic"); if(dv_topic){ dv_topic.style.display=''; } }else{ document.getElementById("dv_checkb2").checked=false; var dv_topic=document.getElementById("dv_topic"); if(dv_topic){ dv_topic.style.display='none'; } } if (readCookie("preview")=='1'){ document.getElementById("dv_checkb1").checked=true; var dv_preview=document.getElementById("dv_preview"); if(dv_preview){ dv_preview.style.display=''; } }else{ document.getElementById("dv_checkb1").checked=false; var dv_preview=document.getElementById("dv_preview"); if(dv_preview){ dv_preview.style.display='none'; } } }